djbuch.kapitel_19
Class Message

java.lang.Object
  |
  +--djbuch.kapitel_19.Message
Direct Known Subclasses:
EmailNotes

public abstract class Message
extends java.lang.Object

die abstrakte Klasse Message ist ein loser Rahmen für die Implementation von Nachrichten. Eine Nachricht kann eine SMS oder eine E-Mail oder eine beliebige andere Implementation sein. die getter und setter dienen dazu, die wichtigsten Parameter (Empfänger, Absender) zu setzen. Jede Implementation muss send () definieren. send () muss die parameter sendCount, sendResponseMessage und sendStatus bedienen. der Hashtable config kann beliebige Konfigurationsparameter aufnehemen (z.B. SMTP Server oder SMS -Gateway)

Author:
Thomas Ekert

Field Summary
static int TYPE_EMAIL
           
static int TYPE_EMAIL_HTML
           
static int TYPE_NONE
           
static int TYPE_OTHER
           
static int TYPE_SMS
           
 
Method Summary
 java.lang.Object getConfiguration(java.lang.String key)
          liefert einen frei definierten Parameter der unter key im Hashtable abgespeichert ist.
 java.util.Hashtable getConfigurations()
           
 java.lang.String getMessage()
          liefert die zuvor gesetzte zu verschickende Nachricht
 java.lang.String getRecipient()
           
 java.lang.String getResponseMessage()
           
 int getSendCount()
           
 java.lang.String getSender()
           
 boolean getSendStatus()
           
 void setConfiguration(java.lang.String key, java.lang.Object value)
          setzt einen Parameter im Hashtable
 void setRecipient(java.lang.String rec)
          Setzt den Empfänger der Message.
static java.lang.String stringMailType(int mailType)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TYPE_NONE

public static final int TYPE_NONE
See Also:
Constant Field Values

TYPE_SMS

public static final int TYPE_SMS
See Also:
Constant Field Values

TYPE_EMAIL

public static final int TYPE_EMAIL
See Also:
Constant Field Values

TYPE_EMAIL_HTML

public static final int TYPE_EMAIL_HTML
See Also:
Constant Field Values

TYPE_OTHER

public static final int TYPE_OTHER
See Also:
Constant Field Values
Method Detail

getRecipient

public java.lang.String getRecipient()
Returns:
- null oder Wert

getSender

public java.lang.String getSender()
Returns:
- null oder Wert

setRecipient

public void setRecipient(java.lang.String rec)
                  throws MessageException
Setzt den Empfänger der Message. Je nach implementierung ist dies ein für die Implementierung geeigneter String (also. z.B. eine Telefonnummer für SMS oder E-Mail Adresse für E-Mail

Parameters:
rec - - Empfänger
Throws:
MessageException - - falls der zu Setzende Recipient nicht ok (hierfür muss isRecipientOK implementiert werden.) ist.

getConfigurations

public java.util.Hashtable getConfigurations()

getConfiguration

public java.lang.Object getConfiguration(java.lang.String key)
                                  throws MessageException
liefert einen frei definierten Parameter der unter key im Hashtable abgespeichert ist.

Parameters:
key -
Returns:
Throws:
MessageException

setConfiguration

public void setConfiguration(java.lang.String key,
                             java.lang.Object value)
setzt einen Parameter im Hashtable

Parameters:
key -
value -

getResponseMessage

public java.lang.String getResponseMessage()
Returns:
- liefert null (default) oder die bei dem Versenden der Message erzeugte Antwort vom Message-Gateway Muss bei der Implementierung im send() gesetzt werden.

getSendStatus

public boolean getSendStatus()
Returns:
- status (Erfolg) des Message Versands. Muss bei der Implementierung im send() gesetzt werden.

getSendCount

public int getSendCount()
Returns:
anzahl der Versuche eine Nachricht zu versenden. Muss bei der Implementierung im send() gesetzt werden.

getMessage

public java.lang.String getMessage()
liefert die zuvor gesetzte zu verschickende Nachricht

Returns:

stringMailType

public static java.lang.String stringMailType(int mailType)